草庐IT

python - 通过 Python 运行 Windows CMD 命令

全部标签

ruby - 如何从命令行调用旧版本的 gem?

假设我安装了两个版本的gem(somegem版本0.10.6和0.10.5)并且我想从命令行运行早期版本。我必须卸载较新的版本吗?有没有一种方法可以使用标志来指定我要使用的版本?有点像……somegem/path/to/dir--version0.10.5我查看了ruby​​gems文档,它只描述了当您需要文件中的gem时如何使用特定版本,但没有说明如何从命令行执行此操作。 最佳答案 somegem_0.10.5_/path/to/dir没有指向文档的链接,因为显然没有。 关于ruby-

ruby - 我可以或应该通过 ruby​​ 中的 object_id 属性找到一个对象吗?

当我创建一个新对象时,假设o=Object.new这个对象有一个id,o.object_id#=>########我还使用Object类制作了其他几个对象。使用object_id属性让ruby​​找到对象“o”的最佳方法是什么?我在想类似的事情search_id=o.object_idsearch_result=Object.find(search_id)其中“search_results”是对应于“search_id”的对象。此外,我肯定会欣赏一种完全不同的方法来索引对象并通过guid或其他方式检索它们。非常感谢!哈,好吧,我想我真的只需要在数据库的上下文中考虑这个问题,只需使用My

ruby - osx bash 上的树命令

我正在关注screencast在名为pry的ruby上.在8:10,使用了.tree命令,我相信这是一个Unix命令。它似乎在我的系统上不起作用:[24]pry(main)>.tree\Error:therewasaproblemexecutingsystemcommand:tree我已将问题追溯到here,其中pry引用了一个shell命令:Pry::CommandSet.newdocommand(/\.(.*)/,"Alltextfollowinga'.'isforwardedtotheshell.",:listing=>".")do|cmd|ifcmd=~/^cd\s+(.+)/

ruby-on-rails - 已安装 Rails 但 rails 命令显示未安装

我正在使用Ubuntu9.10KarmicKoala和Ruby1.9.1。我使用sudogeminstallrails安装了Rails,它为我安装了所有库。当我在终端中输入rails时,它说。当前未安装程序“rails”。您可以通过键入以下内容来安装它:sudoapt-getinstallrailsrails:找不到命令我可以找到rake,它在rake1.9.1下,但是找不到Rails,有人能指出我正确的方向吗?编辑:ruby的路径不是问题,问题是rails在哪里?我该如何执行它?rails根本不起作用,可执行文件在哪里? 最佳答案

ruby - 有一个 ruby​​ 脚本输出正在运行它的 ruby​​ 版本

如何让我的ruby​​脚本输出运行它的ruby​​版本? 最佳答案 RUBY_VERSION常量包含ruby​​解释器的版本号,RUBY_PATCHLEVEL包含补丁级别,因此:putsRUBY_VERSION输出例如2.2.3,同时:putsRUBY_PATCHLEVEL输出例如173。它可以像这样一起使用:ruby-e'print"ruby#{RUBY_VERSION}p#{RUBY_PATCHLEVEL}"'输出例如ruby2.2.3p173 关于ruby-有一个ruby​​脚本输

ruby - 仅当从命令行调用脚本时才运行代码

所以当我从命令行调用我的脚本时,我希望它接受一个int并使用该值做一些事情:rubyscript.rbputsARGV[0],etc...但是,每当加载或需要脚本而不是从命令行调用脚本时,我想完全跳过这部分代码。如何检测脚本是通过命令行调用还是刚刚加载?谢谢! 最佳答案 通常将它放在脚本的底部:if__FILE__==$0#thiswillonlyrunifthescriptwasthemain,notload'dorrequire'dend因为我喜欢在文件顶部看到主要操作,所以我通常将defrun!作为文件中的第一个方法,然后以以

ruby-on-rails - 在本地主机 :4567 but not on IP 上运行的 Ruby Sinatra Web 服务

我在Windows732位操作系统上有一个ruby​​(使用sinatra)网络服务。它在端口4567上运行。当我使用localhost:4567时它工作正常但是当我用我机器的本地ip替换localhost时说192.168.103.99:4567它不起作用,并且失败连接。我已经禁用了防火墙,绕过代理并将端口4567添加到异常(exception),仍然没有运气。可能是什么问题? 最佳答案 以下对我有用。rubyapp.rb-o0.0.0.0 关于ruby-on-rails-在本地主机:

通过 Mac Ports 在 Mac OSX 上使用 Ruby

我是Ruby和MacOSX的新手,但我对Unix命令有相当多的经验。我刚刚通过MacPorts命令(portinstallruby​​19)安装了Ruby1.9。然后,我需要从根目录中进行查找,以确定它去了哪里,结果是:/opt/local/var/macports/software/ruby19/1.9.1-p376_0/opt/local/bin/ruby1。9.当前版本的Ruby(1.8.6)通过/usr/bin/ruby运行,它是/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby的符号链

ruby-on-rails - 我真正运行的是哪个 Ruby 版本?

我正在运行Ubuntu12.04LTS,并通过RVM安装了Ruby。问题是,当我输入ruby-v时进入终端,它说我的Ruby版本是1.8.7,并且为Sinatra使用shotgungem也说我正在运行Ruby1.8.7.但是当我输入rvmlist它显示我安装的唯一版本的Ruby是2.0.0这是我当前的默认版本。我安装了Ruby2.0.0通过RVM,它是我在我的机器上安装的唯一版本。现在,当我尝试安装Rails4但出现错误提示我需要Ruby1.9或更高版本时。我怎么知道我真正使用的是哪个版本,我如何设置2.0.0作为我唯一的版本? 最佳答案

ruby - 如何通过数字索引获取哈希值

有一个散列:h={:a=>"val1",:b=>"val2",:c=>"val3"}我可以引用哈希值:h[:a],h[:c]但我想通过数字索引来引用:h[0]=>val1h[2]=>val3这可能吗? 最佳答案 h.values会给你一个请求的数组。>h.values#⇒[#[0]"val1",#[1]"val2",#[2]"val3"#]UPD虽然h[h.keys[0]]的答案被标记为正确,但我对基准测试有点好奇:h={:a=>"val1",:b=>"val2",:c=>"val3"}Benchmark.bmdo|x|x.repo